4.  formular prüfen

4.3  formular-element prüfen

zugriff zu eigenschaften
Alle elemente haben die eigenschaft type, die weiteren eigenschaften hängen von type ab. Den wert einer eigenschaft erhält man mit (jetzt nur die kurzschreibweise):

wert = fm.elemname.type;
wert = elemname.type;

Für die anderen eigenschaften gilt das entsprechend. Welche eigenschaften vorhanden sind und wie man sie prüft und ggf. ändert hängt vom typ des elements ab.

texteingabefeld

eigenschaft type: "text" | "password" | "textarea"

Geprüft wird die eigenschaft value, d.h. der eingegebene bzw. der vorbelegte text.

if (elemname.value == "")
     var OK = false;
else
{    var OK = true;
     // ggf jetzt weitere aktionen
}

Enthält das formular mehrere texteingabefelder mit gleichem namen, stehen die value-werte in dem array elemname zur verfügung, mit elemname[n] greift man dann auf die werte zu.


radiobutton

eigenschaft type: "radio"

Hier kann man die eigenschaft checked prüfen. Meist haben mehrere radiobutton einen gemeinsamen namen und die eigenschaften der button stehen im array elemname. Um festzustellen, welcher button ausgewählt wurde, schreibt man am besten eine schleife.

var OK = false;
for (var x=0; x<fm.elemname.length; x++)
{    if (fm.elemname[x].checked)
     {    OK = true;
          break;
     }
}

Die variable x enthält die lfd nummer des ausgewählten radiobutton. Wie man an den zugehörigem text der beschriftung kommt, der ja in value stehen müßte, war nicht zu erfahren.


checkbox

eigenschaft type: "checkbox"

Auch hier prüft man die eigenschaft checked, allerdings haben mehrere checkboxen keinen gemeinsamen namen und man muss sie der reihe nach alle prüfen, zumal ja mehrere boxen ausgewählt sein können. Dafür ist es wieder einfach an den text der beschriftung zu kommen.

if (fm.elemname.checked)
    var text = fm.elemname.value;     // text der beschriftung


auswahlliste

eigenschaft type: "select-one"

Hier macht es keinen sinn, den einzelnen optionen einen namen zu geben, vielmehr gibt man dem select-tag einen namen. Alle optionen stehen im array options und haben ggf. die eigenschaft selected. Man muss aber nicht diesen array abarbeiten, weil der index der ausgewählten option in der variablen selectedIndex angeboten wird. Es genügt also, zu schreiben:

if (fm.selectname.selectedIndex == 0)
     var OK = false;
else
{    var auswahl = fm.selectname.selectedIndex;   // lfd nr der option
     var wert = fm.selectname.options[auswahl];   // value der option
     var OK = true;
}


mehrfach-auswahlliste

eigenschaft type: "select multiple"

Hier steht der index der ersten auswahl in selectedIndex, sonst alles wie bei der einfachen auswahlliste.


beispiel 4 - formular prüfen
Das beispiel enthält ein formular mit drei eingabefeldern, die vor dem abschicken an die zielseite mit der funktion check darauf geprüft werden, ob eine eingabe gemacht wurde. Fehlende eingaben werden mit prompt angefordert.

EXEC      beispiel4 ausführen


zum untermenü


    IMPRESSUM  

    KONTAKT  

    PRIVAT  

    D O K U  


  H T M L  
  C S S  
  P H P  
  My S Q L  
  javascript